
// ts extends : 接口 / 类
class Person1<T, U = string> {
  // 1. 先声明类型
  username: T;
  // 2. 类修饰符
  // private password: U;

  constructor(args: T) {
    this.username = args;
  }

  sayName(): T {
    return this.username;
  }
}

// 3. 可以使用泛型  名称的后面  泛型可以写多个
// new Person1()..password // 报错 因为 password是私有(private)
const str1 = new Person1<number>(123).sayName();
str1.toFixed(2);

// 枚举 : 一个星期七天
// 网络请求 code : 200 400 401 403 405 500
// 程序 : 老师 管理员 学生 访客
// redux : action

enum Code {
  success = 200,
  badRequest = 400,
  UnAuthor = 401,
}

console.log(Code.badRequest)

